﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Text;
using System.Net.Mail;
using System.Net;

/// <summary>
/// Summary description for SendActivationMail
/// </summary>
public class SendActivationMail
{
    static string Mail_Smtp_Host = ConfigurationManager.AppSettings["Mail_Smtp_Host"];
    static int Mail_Smtp_Port = Convert.ToInt32(ConfigurationManager.AppSettings["Mail_Smtp_Port"]);
    static string Mail_From = ConfigurationManager.AppSettings["Mail_From"];
    static string Mail_From_Pwd = ConfigurationManager.AppSettings["Mail_From_Pwd"];
    static string Mail_From_Sub = "[Trang web tphcm.com.vn]";
    static string Mail_Sub = "Thông tin đăng ký";

	public SendActivationMail()
	{
		//
		// TODO: Add constructor logic here
		//
	}
    private string BuildEmailMsg(string email,string pwd,string linkactive,string hoten, string gioitinh)
    {
        MaHoaEmail mh = new MaHoaEmail();
        StringBuilder sb = new StringBuilder();
        sb.Append("Chào ");
        switch (gioitinh)
        {
            case "Nam":
                sb.Append("Anh ");
                break;
            case "Nu":
                sb.Append("Chị ");
                break;
            default:
                sb.Append("Anh/Chị ");
                break;
        }
        sb.AppendLine(hoten + " đã tham gia trang web tphcm.com.vn của chúng tôi.");
        sb.AppendLine("Sau đây là thông tin đăng ký:");
        sb.AppendLine("     _Username (dùng để đăng nhập vào hệ thống): " + email);
        sb.AppendLine("     _Mật khẩu: " + pwd);
        sb.AppendLine("Vui lòng click vào link sau để hoàn tất thủ tục đăng ký:");
        sb.AppendLine("http://"+linkactive+"/Nguoidung/Register_Active.aspx?id="+mh.EncryptToUrl(email));
        return sb.ToString();
    }
    public bool SendMail(string email_, string pwd, string linkactive, string hoten_, string gioitinh_)
    {
        try
        {
            SmtpClient client = new SmtpClient();
            client.Host = Mail_Smtp_Host;
            MailAddress from = new MailAddress(Mail_From, Mail_From_Sub);
            MailAddress to = new MailAddress(email_);
            MailMessage message = new MailMessage(from, to);
            message.Body = BuildEmailMsg(email_, pwd, linkactive, hoten_, gioitinh_);
            message.IsBodyHtml = false;
            message.Subject = Mail_Sub;
            NetworkCredential myCreds = new NetworkCredential(Mail_From, Mail_From_Pwd, "");
            client.Credentials = myCreds;
            client.Send(message);
            return true;
        }
        catch (Exception ex)
        {
            return false;
        }
    }
    //phan gui mail cua viec lam

    private string BuildEmailMsgNhatuyenDung(string mailaddress, string pwd, string linkactive, string tencongty)
    {
        MaHoaEmail mh = new MaHoaEmail();
        StringBuilder sb = new StringBuilder();
        sb.Append("Chào, ");

        sb.AppendLine("Bạn đã đăng kí tài khoản cho người tuyển dụng của tphcm.com.vn");
        sb.AppendLine("Sau đây là thông tin đăng ký:");
        sb.AppendLine("     Tên tài khoản (dùng để đăng nhập vào phần nhà tuyển dụng): " + mailaddress);
        sb.AppendLine("     _Mật khẩu: " + pwd);
        sb.AppendLine("Vui lòng click vào link sau để hoàn tất thủ tục đăng ký:");
        sb.AppendLine("http://" + linkactive + "/vieclam/RegisterActiveNTD.aspx?id=" + mh.EncryptToUrl(mailaddress));
        return sb.ToString();
    }
        public bool SendMailNhatuyenDung(string mailaddress, string pwd, string linkactive, string tencongty_ )
    {
        try
        {
        SmtpClient client = new SmtpClient(Mail_Smtp_Host, Mail_Smtp_Port);
        client.EnableSsl = true;
        MailAddress from = new MailAddress(Mail_From, Mail_From_Sub);
        MailAddress to = new MailAddress(mailaddress);
        MailMessage message = new MailMessage(from, to);
        message.Body = BuildEmailMsgNhatuyenDung(mailaddress, pwd, linkactive, tencongty_);
        message.IsBodyHtml = false;
        message.Subject = Mail_Sub;
        NetworkCredential myCreds = new NetworkCredential(Mail_From, Mail_From_Pwd, "");
        client.Credentials = myCreds;
        client.Send(message);
        return true;
        }
        catch (Exception ex)
        {
            return false;
        }

    }

        private string BuildEmailNguoiTimViec(string tendangnhap, string pwd, string linkactive, string gioitinh)
        {
            MaHoaEmail mh = new MaHoaEmail();
            StringBuilder sb = new StringBuilder();
            sb.Append("Chào ");
            switch (gioitinh)
            {
                case "true":
                    sb.Append("Anh ");
                    break;
                case "false":
                    sb.Append("Chị ");
                    break;
                default:
                    sb.Append("Anh/Chị ");
                    break;
            }
            sb.AppendLine(tendangnhap + " đã tham gia phần người tìm việc của chúng tôi.");
            sb.AppendLine("Sau đây là thông tin đăng ký:");
            sb.AppendLine("     Tên đăng nhập (dùng để đăng nhập vào phần người tìm việc): " + tendangnhap);
            sb.AppendLine("     _Mật khẩu: " + pwd);
            sb.AppendLine("Vui lòng click vào link sau để hoàn tất thủ tục đăng ký:");
            sb.AppendLine("http://" + linkactive + "/Nguoidung/RegisterActiveNTV.aspx?id=" + mh.EncryptToUrl(tendangnhap));
            return sb.ToString();
        }

        public bool SendMailNguoiTimViec(string tendangnhap_, string pwd, string linkactive, string gioitinh_,string email)
        {
            try
            {
                SmtpClient client = new SmtpClient(Mail_Smtp_Host, Mail_Smtp_Port);
                client.EnableSsl = true;
                MailAddress from = new MailAddress(Mail_From, Mail_From_Sub);
                MailAddress to = new MailAddress(email);
                MailMessage message = new MailMessage(from, to);
                message.Body = BuildEmailNguoiTimViec(tendangnhap_, pwd, linkactive, gioitinh_);
                message.IsBodyHtml = false;
                message.Subject = Mail_Sub;
                NetworkCredential myCreds = new NetworkCredential(Mail_From, Mail_From_Pwd, "");
                client.Credentials = myCreds;
                client.Send(message);
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }
        }
}
